/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Negocio;

import dados.Cripto;
import dados.Medico;
import dados.MedicoJaExisteException;
import dados.MedicoNaoExisteException;
import dados.PasswordErradaException;
import dados.SQLConnection.SQLConnect;
import dados.SQLConnection.SQLMedicos;
import java.util.ArrayList;

/**
 *
 * @author rmb
 */
public class GestaoMedicos {
    
    
    public GestaoMedicos() {
        
    }
            
    
    public void inserirMedico(Medico m) throws MedicoJaExisteException {
        
    }
    
    public void eliminaMedico() {
        
    }
    
    public void editarMedicoBI() {
        
    }
    
    public void editarMedicoNome() {
        
    }
    
    public void editarMedicoMorada() {
        
    }
    
    public void editarMedicoCodPostal() {
        
    }
    
    public void editarMedicoDataNasc() {
        
    }
    
    public void editarMedicoPassword() {
        
    }
    
    public void editarMedicoContacto() {
        
    }
    
    public ArrayList<Medico> getMedicosNome(String nome) {
        SQLConnect c = new SQLConnect();
        c.connectLocalHost();
        SQLMedicos cm = new SQLMedicos(c.getConnection());
        ArrayList<Medico> meds = new ArrayList<Medico>();
        
        meds = cm.getMedicosNome(nome);
        
        c.closeConnection();
        
        return meds;
    }
    
    public ArrayList<Medico> getMedicosCod(String cod) {
        SQLConnect c = new SQLConnect();
        c.connectLocalHost();
        SQLMedicos cm = new SQLMedicos(c.getConnection());

        ArrayList<Medico> meds = new ArrayList<Medico>();
        
        meds = cm.getMedicosCod(cod);
        
        c.closeConnection();
        
        return meds;
    }
    
    public void getMedicoPassword(String cod,String pass) throws MedicoNaoExisteException,PasswordErradaException {
        
        SQLConnect c = new SQLConnect();
        c.connectLocalHost();
        SQLMedicos cm = new SQLMedicos(c.getConnection());
        Cripto cr = new Cripto(pass);
        
        String medPass = null;
        medPass = cm.getMedicoPassword(cod);
        
        if(!(medPass.equals(cr.encrypt())))
            throw new PasswordErradaException();
                
        c.closeConnection();
        
    }
    
    public Medico getMedicoCod(String cod) {
        
        SQLConnect c = new SQLConnect();
        c.connectLocalHost();
        SQLMedicos cm = new SQLMedicos(c.getConnection());
                                
        
        Medico m = cm.getMedicoCod(cod);
        
        return m;
    }
    
}
